Infinite impulse response filter circuit and magnetic disk drive

ABSTRACT

Embodiments in accordance with the present invention provide an infinite impulse response (IIR) filter circuit which can operate stably even when the coefficients are adaptively changed. The IIR filter circuit in accordance with an embodiment of the present invention has transfer function coefficients that are adaptively changed. Wherein using a Nth-order polynomial A(z) and a polynomial B(z) whose order is not higher than N, the transfer function is defined by  
           L   ⁡     (   z   )       =       B   ⁡     (   z   )         A   ⁡     (   z   )           ;       
     where     
           ∏     i   =   0       -   1       ⁢           ⁢     (       z   2     +   1   -     2   ⁢           ⁢     k   i     ⁢   z       )       =   1       
 
is also defined. The polynomial A(z) is transformed to make the term of the Nth power of z equal to 1. If the order of the polynomial A(z) is even, the polynomial A(z) is determined so as to satisfy the condition:  
         A   ⁡     (   z   )       =       1     1   +   l       ⁢     (         ∏     i   =   0         N   /   2     -   1       ⁢           ⁢     (       z   2     +   1   -     2   ⁢           ⁢     k     2   ⁢           ⁢   i       ⁢   z       )       +       l   ⁡     (       z   2     -   1     )       ⁢       ∏     i   =   0         N   /   2     -   2       ⁢     (       z   2     +   1   -     2   ⁢           ⁢     k       2   ⁢           ⁢   i     +   1       ⁢   z       )           )           
 
If the order N is odd, the polynomial A(z) is determined so as to satisfy the condition:  
         A   ⁡     (   z   )       =       1     1   +   l       ⁢     (         (     z   +   1     )     ⁢       ∏     i   =   0           (     N   -   1     )     /   2     -   1       ⁢           ⁢     (       z   2     +   1   -     2   ⁢           ⁢     k     2   ⁢           ⁢   i       ⁢   z       )         +       l   ⁡     (     z   -   1     )       ⁢       ∏     i   =   0           (     N   -   1     )     /   2     -   1       ⁢     (       z   2     +   1   -     2   ⁢           ⁢     k       2   ⁢           ⁢   i     +   1       ⁢   z       )           )           
 
where l and k i  (i=0, 1, 2 , , , ) are real numbers.

CROSS-REFERENCE TO RELATED APPLICATION

The instant nonprovisional patent application claims priority to Japanese Patent Application No. 2006-005294, filed Jan. 12, 2006 and incorporated by reference herein for all purposes.

BACKGROUND OF THE INVENTION

To read/write information at a position on a spinning recording medium in a magnetic disk drive such as a hard disk drive, motion control is performed to move a magnetic head to the read/write position. If shock is given from external during this motion control, positioning of the magnetic head to the read/write position is difficult. Therefore, it is recently considered to configure such a control circuit that external shock is detected by a sensor and the signal from the sensor, after processed by a filter, is used to correct the magnetic head position control signal or remove the affection of the external shock.

FIG. 4 shows an example of a magnetic disk drive where such a circuit configuration is applied. It comprises a magnetic recording medium 1, a magnetic head actuator 2, a read/write circuit 3, a controller circuit 4, a driver circuit 5, a shock sensor 6 and a feed-forward circuit 7. These respective components are accommodated in and fixed to a base B.

On the magnetic recording medium 1, a plurality of concentrical tracks are formed. Data is written within these tracks.

The magnetic head actuator 2 is driven by a voice coil motor VCM to pivot, which moves the magnetic head to a read/write position on the magnetic recording medium 1.

The read/write circuit 3 generates a recording signal from recording data, which is entered from the controller circuit 4, and outputs it to the magnetic head. In addition, this read/write circuit 3 generates regeneration data from the regeneration signal, which is output from the magnetic head, and outputs it to the controller circuit 4.

The controller circuit 4 exchanges recording data and regeneration data with a host. In addition, this controller circuit 4 generates a position error signal (PES) indicative of the magnetic head's deviation from the read/write position by using the servo signal recorded on the magnetic disk medium 1 and, based on this position error signal (PES), generates a feedback control signal for controlling the magnetic head so as not to deviate from the track.

To move the magnetic head to an information read/write position on the magnetic recording medium 1 as instructed from the host, the controller circuit 4 generates a control signal based on the instruction and corrects this control signal by adding/subtracting the feedback control signal to/from the control signal to generate a primary corrected control signal.

Further, the controller circuit 4 generates a secondary corrected control signal by adding/subtracting the primary corrected control signal to/from a feed-forward signal which is output from the feed-forward circuit 7.

From the controller circuit 4, the driver circuit 5 receives the secondary corrected control signal to control the voice coil motor VCM. To the voice coil motor VCM, the driver circuit 5 outputs a control current whose amplitude is determined according to the secondary corrected control signal.

If a shock is given to the magnetic disk drive, the shock sensor 6 outputs a digital value indicating the magnitude of the shock. The feed-forward circuit 7 comprises a phase shift filter circuit 11, an adaptation circuit 12 and a feed-forward filter 13 as shown in FIG. 5.

Here, transfer function P is used to represent the voice coil motor VCM while transfer function Gc represents the controller circuit. Then, the response characteristic Gm from the output of the feed-forward filter 13 to the magnetic head actuator 2 is given as below. $\begin{matrix} {G_{m} = \frac{P}{1 + {G_{c}P}}} & \left( {{Equation}\quad 8} \right) \end{matrix}$

The phase shift filter circuit 11 receives the output signal of the shock sensor 6 as an input and shifts the phase of the output signal of the shock sensor 6 so that the phase of the output signal of the shock sensor 6 falls within a predetermined range (for example, ±π/2 radians) with respect to the phase of the signal when it has just passed the transfer function Gm given by Equation 8.

The adaptation circuit 12 receives the position error signal (PES) from the controller circuit 4 as an input and the output signal of the phase shift filter circuit 11 as an input. Based on the output signal of the phase shift filter circuit 11 and the position error signal (PES), this adaptation circuit 12 uses the LMS (Least Mean Square) algorithm to control the coefficients of the respective powers of z in the feed-forward filter 13 so as to make smaller the position error signal (PES).

The feed-forward filter 13 is a FIR (Finite Impulse Response) filter. The coefficients of the respective powers of z in its transfer function are controlled by the adaptation circuit 12. This feed-forward filter 13 filters the output signal of the shock sensor 6 and outputs it to the controller circuit 4 as a feed-forward signal.

In this conventional example, anti-shock dynamic feed-forward controlling of the amplitude of current supplied to the voice coil motor VCM can raise the shock resistance.

Defining Gbt as the shock transfer function from the base B to the magnetic head actuator 2, the transfer function Gff of the feed-forward filter 13 in the above-mentioned conventional magnetic disk drive should be set as below: $\begin{matrix} {G_{ff} = {- \frac{G_{bt}}{G_{s}}}} & \left( {{Equation}\quad 9} \right) \end{matrix}$

where the Gs is the output signal of the shock sensor 6. Generally, however, to realize this type of transfer function, the feed-forward filter 13 is required to be an IIR (Infinite Impulse Response) filter, not a FIR (Finite Impulse Response) filter. Generally, the IIR filter is not always stable. For the IIR filter to stably operate, its coefficients must be set carefully.

However, in the case of the technique mentioned above as a conventional example where the filter's coefficients are changed adaptively, the filter is configured as a FIR filter since it is not yet possible to secure the stability if the filter is configured as an IIR filter.

BRIEF SUMMARY OF THE INVENTION

Embodiments in accordance with the present invention provide an infinite impulse response (IIR) filter circuit which can operate stably even when the coefficients are adaptively changed. The IIR filter circuit in accordance with an embodiment of the present invention has transfer function coefficients that are adaptively changed. Wherein using a Nth-order polynomial A(z) and a polynomial B(z) whose order is not higher than N, the transfer function is defined by ${{L(z)} = \frac{B(z)}{A(z)}};$ where ${\prod\limits_{i = 0}^{- 1}\quad\left( {z^{2} + 1 - {2\quad k_{i}z}} \right)} = 1$ is also defined. The polynomial A(z) is transformed to make the term of the Nth power of z equal to 1. If the order of the polynomial A(z) is even, the polynomial A(z) is determined so as to satisfy the condition: ${A(z)} = {\frac{1}{1 + l}\left( {{\prod\limits_{i = 0}^{{N/2} - 1}\quad\left( {z^{2} + 1 - {2\quad k_{2\quad i}z}} \right)} + {{l\left( {z^{2} - 1} \right)}{\prod\limits_{i = 0}^{{N/2} - 2}\left( {z^{2} + 1 - {2\quad k_{{2\quad i} + 1}z}} \right)}}} \right)}$ If the order N is odd, the polynomial A(z) is determined so as to satisfy the condition: ${A(z)} = {\frac{1}{1 + l}\left( {{\left( {z + 1} \right){\prod\limits_{i = 0}^{{{({N - 1})}/2} - 1}\quad\left( {z^{2} + 1 - {2\quad k_{2\quad i}z}} \right)}} + {{l\left( {z - 1} \right)}{\prod\limits_{i = 0}^{{{({N - 1})}/2} - 1}\left( {z^{2} + 1 - {2\quad k_{{2\quad i} + 1}z}} \right)}}} \right)}$ where l and k_(i) (i=0, 1, 2 , , , ) are real numbers.

For a more complete understanding of the present invention, reference is made to the following detailed description taken in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing the configuration of a magnetic disk drive in accordance with an embodiment of the present invention.

FIG. 2 is a functional block diagram of an infinite impulse response filter circuit in accordance with an embodiment of the present invention.

FIG. 3 is a schematic diagram provided to explain how the magnetic disk drive operates in accordance with an embodiment of the present invention operates.

FIG. 4 is a block diagram showing the configuration of a conventional magnetic disk drive.

FIG. 5 is a block diagram showing an example of a conventional feed-forward circuit.

DETAILED DESCRIPTION OF THE INVENTION

An object of an embodiment in accordance with the present invention is to provide an IIR filter circuit capable of operating stably while the coefficients are changed adaptively, and a magnetic disk drive capable of implementing anti-shock feed-forward control by using the IIR filter circuit.

To solve the above-mentioned problem of the conventional example, the present invention provides an infinite impulse response filter circuit whose transfer function's coefficients are adaptively changed wherein:

using a Nth-order polynomial A(z) and a polynomial B(Z) whose order is not higher than N, the transfer function is defined by $\begin{matrix} {{{{L(z)} = \frac{B(z)}{A(z)}};}{where}} & \left( {{Equation}\quad 1} \right) \\ {{{{\prod\limits_{i = 0}^{- 1}\quad\left( {z^{2} + 1 - {2\quad k_{i}z}} \right)} = 1};}{{is}\quad{also}\quad{{defined}.}}} & \left( {{Equation}\quad 3} \right) \end{matrix}$

In one embodiment of the present invention, the polynomial A(Z) is transformed to make the term of the Nth power of z equal to 1.

If the order of the polynomial A(z) is even, the polynomial A(z) is determined so as to satisfy the condition $\begin{matrix} {{{A(z)} = {\frac{1}{1 + l}\begin{pmatrix} {{\prod\limits_{i = 0}^{{N/2} - 1}\quad\left( {z^{2} + 1 - {2\quad k_{2\quad i}z}} \right)} +} \\ {{l\left( {z^{2} - 1} \right)}{\prod\limits_{i = 0}^{{N/2} - 2}\left( {z^{2} + 1 - {2\quad k_{{2\quad i} + 1}z}} \right)}} \end{pmatrix}}};} & \left( {{Equation}\quad 4} \right) \end{matrix}$

if the order N is odd, the polynomial A(z) is determined so as to satisfy the condition: $\begin{matrix} {{A(z)} = {\frac{1}{1 + l}\begin{pmatrix} {{\left( {z + 1} \right){\prod\limits_{i = 0}^{{{({N - 1})}/2} - 1}\left( {z^{2} + 1 - {2\quad k_{2\quad i}z}} \right)}} +} \\ {l\left( {z - 1} \right){\prod\limits_{i = 0}^{{{({N - 1})}/2} - 1}\left( {z^{\quad 2} + 1 - {2\quad k_{2\quad i}z}} \right)}} \end{pmatrix}}} & \left( {{Equation}\quad 5} \right) \end{matrix}$ wherein l and k_(i) (i=0, 1, 2 , , , ) are real numbers; and the coefficients of the polynomial A(z) are changed so as to satisfy: l>0 1>k ₀ >k ₁ > . . . >k _(N-2)>−1  (Equation 6)

This allows the infinite impulse response filter circuit to stably operate even if the coefficients are adaptively changed and consequently enables its use for anti-shock feed-forward control in magnetic disk drives and the like.

Embodiments of the present invention will be described below with reference to the drawings. To perform anti-shock feed-forward control, an infinite impulse response filter circuit 70 according to an embodiment of the present invention, instead of the feed-forward circuit 7, is installed in a magnetic disk drive similar to that shown in FIG. 4.

As shown in FIG. 1, this magnetic disk drive which uses the infinite impulse response filter circuit 70 comprises a magnetic recording medium 1, a magnetic head actuator 2, a read/write circuit 3, a controller circuit 4, a driver circuit 5 and a shock sensor 6 as well as the infinite impulse response filter circuit 70. These respective components are accommodated in and fixed to a base B.

The infinite impulse response filter circuit 70 can be realized by using, for example, a DSP (Digital Signal Processor). As shown in FIG. 2, this infinite impulse response filter circuit 70 functionally comprises a first phase shift filter circuit 71, an adaptation circuit 72, a feed-forward filter 73, a second phase shift filter circuit 74 and an adjustment circuit 75.

The first phase shift filter circuit 71 is similar to the conventional phase shift filter circuit 11. It receives the output signal of the shock sensor 6 and shifts the phase of the output signal of the shock sensor 6 so that the phase of the output signal of the shock sensor 6 falls within a predetermined range (for example, ±π/2 radians) with respect to the phase of the signal when it has just passed the transfer function Gm given by Equation 8.

The adaptation circuit 72 is similar to the conventional adaptation circuit 12. It receives the position error signal (PES) entered from the controller circuit 4 and the output signals of the first and second phase shift filter circuits 71 and 74. Based on the output signals of the first and second phase shift filter circuits 71 and 74 and the position error signal (PES), this adaptation circuit 72 uses the LMS (Least Mean Square) algorithm to control the coefficients of the feed-forward filter 73 and those of the adjustment circuit 75 so as to make smaller the position error signal (PES). The method of controlling their coefficients will be described later.

According to an embodiment of the present invention, the feed-forward filter 73 is an infinite impulse response filter and its transfer function's coefficients are controlled by the adaptation circuit 72.

This feed-forward filter 73 filters the output signal of the shock sensor 6 and outputs it to the adjustment circuit 75 as a feed-forward signal. Its transfer function and others will be described later in detail.

The second phase shift filter circuit 74 receives the output signal of the feed-forward filter 73 and shifts the phase of the output signal of the feed-forward filter 73 so that the phase of the output signal of the feed-forward filter 73 falls within a predetermined range (for example, ±π/2 radians) with respect to the phase of the signal when it has just passed the transfer function Gm given by Equation 8.

The adjustment circuit 75 multiplies the output signal of the feed-forward filter 73 by the coefficients set by the adaptation circuit 72 and outputs the result to the controller circuit 4.

The following describes the function of the feed-forward filter 73. Generally, an IIR type filter L(z) may be written as below: $\begin{matrix} {{L(z)} = \frac{B(z)}{A(z)}} & \left( {{Equation}\quad 10} \right) \end{matrix}$ where A(z) is a Nth-order polynomial of z and B(z) is a polynomial whose order of z is not higher than N.

The following discusses the condition for the feed-forward filter 73 to be stable. Since the process somewhat differs depending on whether the order N is even or odd, each case is separately considered below. Also note that it is assumed in the following description that the sampling time is 1 (second) and the unit of imaginary quantity is j in order to simplify the equations without losing the generality. In addition, A(z) is assumed to be positive when the frequency is “0”. Even if A(z) has a negative value when the frequency is “0”, it is possible to make A(z) positive at frequency “0” by multiplying the coefficients of B(z) by “−1”.

Firstly, let the order N be even. A(z) may be written as: $\begin{matrix} {{A(z)} = {\sum\limits_{i = 0}^{N}{a_{i}z^{i}}}} & \left( {{Equation}\quad 11} \right) \end{matrix}$

For simplification, M=N/2 is used to transform the equation to: $\begin{matrix} {{A(z)} = {z^{M}\begin{pmatrix} {{\sum\limits_{i = 1}^{M}{\frac{1}{2}\left( {a_{M + i} + a_{M - i}} \right)\left( {z^{i} + \frac{1}{z^{i}}} \right)}} +} \\ {a_{M} + {\sum\limits_{i = 1}^{M}{\left( {a_{M + i} - a_{M - i}} \right)\left( {z^{i} - \frac{1}{z^{i}}} \right)}}} \end{pmatrix}}} & \left( {{Equation}\quad 12} \right) \end{matrix}$

On the unit circle in the z-plane, this equation (12) can be written as below: $\begin{matrix} {{{A\left( {\mathbb{e}}^{j\quad\omega} \right)} = {{\mathbb{e}}^{j\quad M\quad\omega}\left( {{\sum\limits_{i = 0}^{M}{c_{i}\cos\quad{\mathbb{i}}\quad\omega}} + {j{\sum\limits_{i = 0}^{M}{d_{i}\sin\quad{\mathbb{i}}\quad\omega}}}} \right)}}{{Where}\text{:}}} & \left( {{Equation}\quad 13} \right) \\ {{c_{0} = a_{M}}{c_{i} = {\frac{1}{2}\left( {a_{M + i} + a_{M - i}} \right)\quad\left( {{\mathbb{i}} > 0} \right)}}{d_{i} = {\frac{1}{2}\left( {a_{M + i} - a_{M - i}} \right)}}} & \left( {{Equation}\quad 14} \right) \end{matrix}$

Then, consider: $\begin{matrix} \frac{A\left( {\mathbb{e}}^{j\quad\omega} \right)}{{\mathbb{e}}^{j\quad M\quad\omega}} & \left( {{Equation}\quad 15} \right) \end{matrix}$

As apparent, its real and imaginary parts are a Mth-order polynomial of cosine and a Mth-order polynomial of sine, respectively. The following equation corresponds to Equation 15. $\begin{matrix} {{G(z)} = \frac{A(z)}{z^{M}}} & \left( {{Equation}\quad 16} \right) \end{matrix}$

The coefficients in Equation 14 are real. Therefore, as the frequency is varied from “0” to the Nyquist frequency according to the argument principle, the locus of G(z) revolves counterclockwise M/2 (=N/4) times around the origin in the complex plane, leaving all of the 2M zeros of A(z) as stable roots inside the unit circle.

Let ω_(i) (i=0, 1 . . . ) be a frequency at which the polynomial A(z) traverses the imaginary axis and φ_(i) (i=0, 1 . . . ) be a frequency at which the polynomial traverses the real axis. Thus, if the order N is even, the feed-forward filter 73 is stable if designed to satisfy the following condition: $\begin{matrix} {{\frac{A\left( {\mathbb{e}}^{j\quad\omega} \right)}{{\mathbb{e}}^{j\quad M\quad\omega}} = {{\prod\limits_{i = 0}^{M - 1}\left( {{\cos\quad\omega} - {\cos\quad\omega_{i}}} \right)} + {j\quad l\quad\sin\quad\omega\quad{\prod\limits_{n = 0}^{M - 2}\left( {{\cos\quad\omega} - {\cos\quad\phi_{n}}} \right)}}}}\quad{{Where},}} & \left( {{Equation}\quad 17} \right) \\ {\quad{{l > 0}\quad{0 < \omega_{0} < \phi_{0} < \omega_{1} < \phi_{1} < \ldots < \omega_{M - 1} < \pi}\quad{and}}} & \left( {{Equation}\quad 18} \right) \\ {\quad{{\prod\limits_{n = 0}^{- l}\left( {{\cos\quad\omega} - {\cos\quad\phi_{n}}} \right)} = 1}} & \left( {{Equation}\quad 19} \right) \end{matrix}$

Actually, it is apparent that as the frequency is varied from “0” to the Nyquist frequency, the locus of G(z) starts from a positive point on the real axis, traverses the positive part of the imaginary axis at ω0 and then traverses the negative part of the real axis at φ0. Thus, the locus rotates counterclockwise just M/2 times. Equation 17 can be transformed into the form of Equation 13.

Further, by using: $\begin{matrix} {{{\cos\quad\omega} = {\frac{1}{2}\left( {z + \frac{1}{z}} \right)}}{{j\quad\sin\quad\omega} = {\frac{1}{2}\left( {z - \frac{1}{z}} \right)}}} & \left( {{Equation}\quad 20} \right) \end{matrix}$ Equation 17 can be written as: $\begin{matrix} {\left( {{Equation}\quad 21} \right)} & \quad \\ {\begin{matrix} {\quad{{A(z)} = {{z^{M}{\prod\limits_{i = 0}^{M - 1}\left( {{\frac{1}{2}\left( {z + \frac{1}{z}} \right)} - {\cos\quad\omega_{i}}} \right)}} + {\frac{l}{2}\left( {z - \frac{1}{z}} \right)}}}} \\ {\prod\limits_{n = 0}^{\quad{M - 2}}\left( {{\frac{1}{2}\left( {z + \frac{1}{z}} \right)} - {\cos\quad\phi_{n}}} \right)} \\ {= {{\prod\limits_{i = 0}^{M - 1}{\frac{1}{2}\left( {z^{2} + 1 - {2\quad z\quad\cos\quad\omega_{i}}} \right)}} + {\frac{l}{2}\left( {z^{2} - 1} \right)}}} \\ {\prod\limits_{n = 0}^{M - 2}{\frac{1}{2}\left( {z^{2} + 1 - {2\quad z\quad\cos\quad\phi_{n}}} \right)}} \\ {= {\begin{pmatrix} {{\prod\limits_{i = 0}^{M - 1}\left( {z^{2} + 1 - {2\quad k_{2\quad i}z}} \right)} + {l\left( {z^{2} - 1} \right)}} \\ {\prod\limits_{n = 0}^{M - 2}\left( {z^{2} + 1 - {2\quad k_{{2\quad n} + 1}z}} \right)} \end{pmatrix}\frac{1}{2^{M}}}} \end{matrix}\quad{{Where},}} & (15) \\ {1 > {k_{0}\left( {= {\cos\quad\omega_{0}}} \right)} > {k_{1}\left( {= {\cos\quad\phi_{0}}} \right)} > k_{2} > \ldots > k_{N - 2} > {- 1}} & \left( {{Equation}\quad 22} \right) \end{matrix}$

Since the Mth power of (½) is a coefficient having no relation with the stability, the following condition is obtained through division by the coefficient: $\begin{matrix} {{A(z)} = {{\prod\limits_{i = 0}^{M - 1}\left( {z^{2} + 1 - {2k_{2i}z}} \right)} + {{l\left( {z^{2} - 1} \right)}{\prod\limits_{n = 0}^{M - 2}\left( {z^{2} + 1 - {2k_{{2n} + 1}z}} \right)}}}} & \left( {{Equation}\quad 23} \right) \end{matrix}$

Equations 22 and 23 are the condition for the feed-forward filter 73 to be stable if the order N is even.

Then, let the order of the polynomial A(z) is odd. Consider the following equation which corresponds to Equation 16: $\begin{matrix} {{G(z)} = \frac{A(z)}{z^{M + {1/2}}}} & \left( {{Equation}\quad 24} \right) \end{matrix}$

As the frequency is varied from “0” to the Nyquist frequency, the locus of G(z) makes (M/2+1/4) revolutions clockwise in the complex plane, leaving all of the (2M+1) zeros of A(z) as stable roots inside the unit circle.

That is, the feed-forward filter 73 is stable if the coefficients satisfy the following constraints: l>0 1>k ₀ >k _(i) > . . . >k _(N-2)>−1  (Equation 6)

Similar to the description which follows Equation 17, the following condition is obtained based on this constraint: $\begin{matrix} \left( {{Equation}\quad 25} \right) & \quad \\ {{\frac{A\left( {\mathbb{e}}^{j\omega} \right)}{{\mathbb{e}}^{{j{({M + {1/2}})}}\omega}} = {{\cos\frac{\omega}{2}{\prod\limits_{i = 0}^{M - 1}\left( {{\cos\quad\omega} - {\cos\quad\omega_{i}}} \right)}} + {j\quad l\quad\sin\quad\frac{\omega}{2}{\prod\limits_{n = 0}^{M - 1}\left( {{\cos\quad\omega} - {\cos\quad\phi_{n}}} \right)}}}}{{Where},}} & \quad \\ \left( {{Equation}\quad 26} \right) & \quad \\ {{l > 0}{0 < \omega_{0} < \phi_{0} < \omega_{1} < \phi_{1} < \cdots < \omega_{M - 1} < \pi}} & \quad \\ \left( {{Equation}\quad 27} \right) & \quad \\ {{\prod\limits_{i = 0}^{- l}\left( {{\cos\quad\omega} - {\cos\quad\omega_{i}}} \right)} = 1} & (20) \\ {{\prod\limits_{i = 0}^{- l}\left( {{\cos\quad\omega} - {\cos\quad\phi_{n}}} \right)} = 1} & (21) \end{matrix}$

By using: $\begin{matrix} {{{\cos\quad\omega} = {\frac{1}{2}\left( {z + \frac{1}{z}} \right)}}{{j\quad\sin\quad\omega} = {\frac{1}{2}\left( {z - \frac{1}{2}} \right)}}{{\cos\quad\frac{\omega}{2}} = {\frac{1}{2}\left( {z^{1/2} + \frac{1}{z^{1/2}}} \right)}}} & \left( {{Equation}\quad 28} \right) \end{matrix}$

A(Z) is transformed as below: $\begin{matrix} {\begin{matrix} {{A(z)} = {{z^{M + {1/2}}\frac{1}{2}\left( {z^{1/2} + \frac{1}{z^{1/2}}} \right){\prod\limits_{i = 0}^{M - 1}\begin{pmatrix} {{\frac{1}{2}\left( {z + \frac{1}{2}} \right)} -} \\ {\cos\quad\omega_{i}} \end{pmatrix}}} +}} \\ {l\frac{1}{2}\left( {z^{1/2} + \frac{1}{z^{1/2}}} \right){\prod\limits_{n = 0}^{M - 1}\left( {{\frac{1}{2}\left( {z + \frac{1}{z}} \right)} - {\cos\quad\phi_{n}}} \right)}} \\ {= {{\frac{1}{2}\left( {z + 1} \right){\prod\limits_{i = 0}^{M - 1}{\frac{1}{2}\left( {z^{2} + 1 - {2z\quad\cos\quad\omega_{i}}} \right)}}} +}} \\ {l\frac{1}{2}\left( {z - 1} \right){\prod\limits_{n = 0}^{M - 1}{\frac{1}{2}\left( {z^{2} + 1 - {2z\quad\cos\quad\phi_{n}}} \right)}}} \end{matrix}{{Where},}} & \left( {{Equation}\quad 29} \right) \\ {1 > k_{0} > k_{1} > k_{2} > \cdots > {k_{N - 2} - 1}} & \left( {{Equation}\quad 30} \right) \end{matrix}$

Through division by the Mth power of (½) which is not related with the stability, the following condition is obtained: $\begin{matrix} {{A(z)} = {{\left( {z + 1} \right){\prod\limits_{i = 0}^{M - 1}\left( {z^{2} + 1 - {2k_{2i}z}} \right)}} + {{l\left( {z - 1} \right)}{\prod\limits_{n = 0}^{M - 2}\left( {z^{2} + 1 - {2k_{{2n} + 1}z}} \right)}}}} & \left( {{Equation}\quad 31} \right) \end{matrix}$

If N is odd, stability is secured if Equations 30 and 31 are met.

B(z), which is the numerator of the transfer function of the feed-forward filter 73, can be expressed as below regardless of whether the order N is even or odd: $\begin{matrix} {{B(z)} = {\sum\limits_{i = 0}^{N}{b_{i}z^{i}}}} & \left( {{Equation}\quad 32} \right) \end{matrix}$

Here, A(Z) in either Equation 23 or Equation 31 is divided by (1+l) to make the coefficient of the highest-order term equal to “1”. The resulting E(z) is assumed as the denominator of the transfer function. The coefficient (1+l) will be multiplied later in the adjustment circuit 75. Accordingly, defining: $\begin{matrix} {{E(z)} = \frac{A(Z)}{1 + l}} & \left( {{Equation}\quad 33} \right) \end{matrix}$ the feed-forward filter 73 according to the present embodiment is expressed as: $\begin{matrix} \frac{B(z)}{E(z)} & \left( {{Equation}\quad 34} \right) \end{matrix}$

Note that if N is even, A(z) in Equation 33 is that expressed by Equation 23. As well, if N is oven, A(z) there is that expressed by Equation 31.

For example, if N=4, A(z) is as below according to Equation 23: $\begin{matrix} \left( {{Equation}\quad 35} \right) & \quad \\ \begin{matrix} {{A(z)} = {{\left( {z^{2} + 1 - {2k_{0}z}} \right)\left( {z^{2} + 1 - {2k_{2}z}} \right)} + {{l\left( {z^{2} - 1} \right)}\left( {z^{2} + 1 - {2k_{1}z}} \right)}}} \\ {\left( {1 + l} \right)\left( {z^{4} + \frac{a_{3}}{1 + l} + \frac{a_{2}}{1 + l} + \frac{a_{1}}{1 + l} + \frac{a_{0}}{1 + l}} \right)} \end{matrix} & (28) \end{matrix}$

Thus, E(Z) is as below: $\begin{matrix} {{{E(z)} = \left( {z^{4} + {\frac{a_{3}}{1 + l}z^{3}} + {\frac{a_{2}}{1 + l}z^{2}} + {\frac{a_{1}}{1 + l}z} + \frac{a_{0}}{1 + l}} \right)}{{Where},}} & \left( {{Equation}\quad 36} \right) \\ {{l > 0}{1 > k_{0} > k_{1} > k_{2} > {- 1}}{a_{3} = {{{- 2}\quad k_{0}} - {2\quad k_{2}} - {2\quad k_{1}l}}}{a_{2} = {2 + {4\quad k_{0}k_{2}}}}{a_{1} = {{{- 2}\quad k_{0}} - {2\quad k_{2}} + {2\quad k_{1}l}}}{a_{0} = {1 - l}}} & \left( {{Equation}\quad 37} \right) \end{matrix}$

The feed-forward filter 73 filters the output signal of the shock sensor 6 through the transfer function B(z)/E(z) divided by (1+l), namely: $\begin{matrix} {G_{f} = \frac{\frac{1}{1 + l}{\sum\limits_{i = 0}^{4}{b_{i}z^{i}}}}{E(z)}} & \left( {{Equation}\quad 38} \right) \end{matrix}$

The filtered output signal is output to the adjustment circuit 75 as the feed-forward signal. The adjustment circuit 75 multiplies this feed-forward signal by (1+l) and outputs it.

Thus, the output w_(n) of the adjustment circuit 75 to the controller circuit 4 is: $\begin{matrix} {w_{n} = {{\left( {1 + l} \right)y_{n}} = {{- {\sum\limits_{i = 1}^{4}{a_{4 - i}y_{n - i}}}} + {\sum\limits_{m = 0}^{4}{b_{4 - m}s_{n - m}}}}}} & \left( {{Equation}\quad 39} \right) \end{matrix}$ Where, S_(n) is the output of the shock sensor 6 at time n and y_(n) is the output of the feed-forward circuit 73.

The controller circuit 4 exchanges recording data and regeneration data with a host. In addition, this controller circuit 4 generates a position error signal (PES) indicative of the magnetic head's deviation from the read/write position by using the servo signal recorded on the magnetic disk medium 1 and, based on this position error signal (PES), generates a feedback control signal for controlling the magnetic head so as not to deviate from the track.

To move the magnetic head to an information read/write position on the magnetic recording medium 1 as instructed from the host, the controller circuit 4 generates a control signal based on the instruction and corrects this control signal by adding/subtracting the feedback control signal to/from the control signal to generate a primary corrected control signal.

Further, the present controller circuit embodiment 4 generates a secondary corrected control signal by adding/subtracting the primary corrected control signal to/from the output signal of the adjustment circuit 75.

From the controller circuit 4, the driver circuit 5 receives the secondary corrected control signal to control the voice coil motor VCM. To the voice coil motor VCM, the driver circuit 5 outputs a control current whose amplitude is determined according to the secondary corrected control signal.

Receiving the position error signal (PES) from the controller circuit 4 as an input and the output signals of the first and second phase shift filter circuits 71 and 74 as inputs, the adaptation circuit 72 uses the LMS (Least Mean Square) algorithm to control the coefficients of the respective powers of z in the feed-forward filter 73 and those in the adaptation circuit 75 so as to make smaller the position error signal (PES). This coefficient control method is described below.

The adaptation circuit 72 uses the square of the position error signal (PES) as evaluation function E_(n) as below: $\begin{matrix} {\begin{matrix} {E_{n} = {PES}^{2}} \\ {\equiv e_{n}^{2}} \\ {= \left( {{\sum\limits_{i = 0}^{\infty}{f_{i}D_{n - i}}} + {\sum\limits_{i = 0}^{\infty}{f_{i}w_{n - i}}}} \right)^{2}} \\ {\equiv \left( {d_{n} + X_{n}} \right)^{2}} \end{matrix}{{Where},}} & \left( {{Equation}\quad 40} \right) \\ {f_{0},f_{1},f_{2},{f_{3}\quad\ldots}} & \left( {{Equation}\quad 41} \right) \end{matrix}$ is the impulse response of: $\begin{matrix} \frac{P}{1 + {G_{c}P}} & \left( {{Equation}\quad 42} \right) \end{matrix}$ and Dn-i is the affection (S3) of disturbance shock to the VCM input at time n-i.

From Equation 39, Xn can be transformed to: $\begin{matrix} \begin{matrix} {X_{n} = {\sum\limits_{i = 0}^{\infty}{f_{i}w_{n - i}}}} \\ {= {\sum\limits_{i = 0}^{\infty}{f_{i}\left( {{- {\sum\limits_{k = 1}^{4}{a_{4 - k}y_{n - i - k}}}} + {\sum\limits_{m = 0}^{4}{b_{4 - m}s_{n - i - m}}}} \right)}}} \\ {= {{- {\sum\limits_{k = 1}^{4}{a_{4 - k}{\sum\limits_{i = 0}^{\infty}{f_{i}y_{n - i - k}}}}}} + {\sum\limits_{m = 0}^{4}{b_{4 - m}{\sum\limits_{i = 0}^{\infty}{f_{i}s_{n - i - m}}}}}}} \\ {= {{- {\sum\limits_{k = 1}^{4}{a_{4 - k}p_{n - k}}}} + {\sum\limits_{m = 0}^{4}{b_{4 - m}q_{n - m}}}}} \end{matrix} & \left( {{Equation}\quad 43} \right) \end{matrix}$

Where, p_(n) is the output of the following transfer function, that is, the output signal of the second phase shift filter circuit 74 when y_(n) is entered: $\begin{matrix} \frac{P}{1 + {G_{c}P}} & \left( {{Equation}\quad 42} \right) \end{matrix}$ and q_(n) is the output of the following transfer function, that is the output signal of the first phase shift filter circuit 71, when s_(n) is entered: $\begin{matrix} \frac{P}{1 + {G_{c}P}} & \left( {{Equation}\quad 42} \right) \end{matrix}$

Accordingly, it is expectable that E_(n) is made smaller by partially differentiating E_(n) by each of l, k₀, . . . , k_(N-2), b₀, b₁ . . . b_(N) and decreasing/increasing the coefficient if the derivative is positive/negative. Namely, in the case of the fourth order, each partial derivative is calculated as below: $\begin{matrix} {{{\frac{\partial}{\partial l}E_{n}} = {{2\quad e_{n}\frac{\partial}{\partial l}} = {2\quad{e_{n}\left( {{2\quad k_{1}p_{n - 1}} - {2\quad k_{1}p_{n - 3}} + p_{n - 4}} \right)}}}}{{\frac{\partial}{\partial k_{0}}E_{n}} = {2\quad{e_{n}\left( {{2\quad p_{n - 1}} - {4\quad k_{2}p_{n - 2}} + {2\quad p_{n - 3}}} \right)}}}{{\frac{\partial}{\partial k_{1}}E_{n}} = {2\quad e_{n}2\quad{l\left( {p_{n - 1} - p_{n - 3}} \right)}}}{{\frac{\partial}{\partial k_{2}}E_{n}} = {2\quad{e_{n}\left( {{2\quad p_{n - 1}} - {4\quad k_{0}p_{n - 2}} + {2\quad p_{n - 3}}} \right)}}}{{\frac{\partial}{\partial b_{4}}E_{n}} = {2\quad e_{n}q_{n}}}{{\frac{\partial}{\partial b_{3}}E_{n}} = {2\quad e_{n}q_{n - 1}}}{{\frac{\partial}{\partial b_{2}}E_{n}} = {2\quad e_{n}q_{n - 2}}}{{\frac{\partial}{\partial b_{1}}E_{n}} = {2\quad e_{n}q_{n - 3}}}{{\frac{\partial}{\partial b_{0}}E_{n}} = {2\quad e_{n}q_{n - 4}}}} & \left( {{Equation}\quad 44} \right) \end{matrix}$

For example, k₁ is updated as below: k ₁(n)=k ₁(n−1)−2μe _(n)2l(n−1)(p _(n-1) −p _(n-3))  (Equation 45)

Where, k₁(n) and l(n) are respectively k₁ and l at time n and μ is a LMS convergence parameter.

The adaptation 72 checks whether each thus calculated coefficient satisfies the following constraint: l>0 1>k ₀ >k ₁ > . . . >k _(N-2)>−1  (Equation 6)

If the constraint is not satisfied, the coefficient is adjusted by a predetermined process so as to satisfy the constraint. Its detailed description is omitted here since it is mathematically easy to adjust the coefficient so as to satisfy the above-mentioned constraint while making smaller the evaluation function E_(n).

This constraint may be stricter as below: β>l>α 1−γ₀ >k ₀ >k1+δ₀ k0−γ₁ >k ₁ >k ₂+δ₁ . . . k _(N-3)−γ_(N-2) >k _(N-2)>−1+δ_(N-2)  (Equation 7) Where, both α and β are positive numbers. α, γ_(i) and σ_(i) are designed to be smaller than the predetermined upper limits while β is designed to be larger than the predetermined lower limit. This can enlarge the stability margin.

In the magnetic disk drive embodiment of the present invention, the controller circuit 4 exchanges recording data and regeneration data with the host. In addition, as shown in FIG. 3, the controller circuit 4 generates a position error signal (PES)(S1) indicative of the magnetic head's deviation from the read/write position by using the servo signal recorded on the magnetic recording medium 1 and, based on the position error signal (PES), generates a feedback control signal (S2) to control the position of the magnetic head so as not to deviate from the track.

Shock given to the base B is transferred from the base B to the magnetic head actuator 2 via transfer function Gbt (S3). Consequently, the output of the driver circuit 5 includes an error. This error has influence on the magnetic head's output signal (PES) through the transfer function P of the VCM.

Meanwhile, the shock sensor 6 outputs a digital value (S4) indicating the magnitude of the shock given to the base B of the magnetic disk drive. This output signal is entered into the infinite impulse response filter circuit 70. The infinite impulse response filter circuit 70 generally has such a transfer function as expressed by Equation 10. A(z) is designed to satisfy Equation 23 if the order N is even. Likewise A(z) is designed to satisfy Equation 31 if the order N is odd. The coefficients are gradually updated by the LMS algorithm so as to satisfy the following constraint: l>0 1>k ₀ >k ₁ > . . . >k _(N-2)>−1  (Equation 6) or β>l>α 1−γ₀ >k ₀ >k ₁+δ₀ k ₀−γ₁ >k ₁ >k ₂+δ₁ . . . k _(N-3)−γ_(N-2) >k _(N-2)>−1+δ_(N-2)  (Equation 7)

Where, both α and β are positive numbers. α, γ_(i) and σ_(i) are designed to be smaller than the predetermined upper limits while β is designed to be larger than the predetermined lower limit.

The feedback control signal is subtracted from output signal (feed-forward signal) wn of this infinite impulse response filter circuit 70 and the result (S5) is added to the VCM control signal. Consequently, the signal obtained by subtracting the feedback signal from the feed-forward signal has influence on the output signal (PES) of the magnetic head via the transfer function P of the VCM.

That is, to move the magnetic head to an information read/write position on the magnetic recording medium 1 as instructed from the host, the controller circuit 4 generates a control signal based on the instruction and corrects this control signal by adding/subtracting the feedback control signal to/from the control signal to generate a primary corrected control signal. Further, the controller circuit 4 generates a secondary corrected control signal by adding/subtracting the primary corrected control signal to/from a feed-forward signal which is output from the infinite impulse response filter circuit 70. From the controller circuit 4, the driver circuit 5 receives the secondary corrected control signal to control the voice coil motor VCM. To the voice coil motor VCM, the driver circuit 5 outputs a control current whose amplitude is determined according to the secondary corrected control signal. Thus, the VCM control signal is corrected so as to cancel the influence of the shock.

In the embodiment described above, the coefficients of the infinite impulse response type filter circuit are gradually updated by the LMS algorithm or the like. In this process, the denominator function of the transfer function is determined so as to satisfy Equation 23 or 31 depending on whether the order of the denominator function is even or odd so that stability can always be secured under a relatively easy-to-satisfy constraint.

This realizes a filter circuit which has a transfer function of the Equation 9 type but can operate stably, that is, provides an IIR filter circuit capable of improving anti-shock response by adaptively changing the coefficients to secure stable operation and consequently provides a magnetic disk drive capable of implementing anti-shock feed-forward control by using such an IIR filter circuit. 

1. An infinite impulse response filter circuit whose transfer function's coefficients are adaptively changed wherein: using a Nth-order polynomial A(z) and a polynomial B(Z) whose order is not higher than N, the transfer function is defined by $\begin{matrix} {{L(z)} = \frac{B(z)}{A(z)}} & \left( {{Equation}\quad 1} \right) \\ {\prod\limits_{i = 0}^{L}X} & \left( {{Equation}\quad 2} \right) \end{matrix}$ is assumed to be 1 when L is negative; in other words $\begin{matrix} {{\prod\limits_{i = 0}^{- 1}\quad\left( {z^{2} + 1 - {2k_{i}z}} \right)} = 1} & \left( {{Equation}\quad 3} \right) \end{matrix}$ when the polynomial A(Z) is transformed to make the term of the Nth power of z equal to 1, if the order of the polynomial A(z) is even, the polynomial A(z) is determined so as to satisfy the condition $\begin{matrix} {{{A(z)} = {\frac{1}{1 + l}\left( {{\sum\limits_{i = 0}^{{N/2} - 1}\left( {z^{2} + 1 - {2k_{2i}z}} \right)} + {{l\left( {z^{2} - 1} \right)}{\sum\limits_{i = 0}^{{N/2} - 2}\left( {z^{2} + 1 - {2k_{{2i} + 1}z}} \right)}}} \right)}};} & \left( {{Equation}\quad 4} \right) \end{matrix}$ if the order N is odd, the polynomial A(z) is determined so as to satisfy the condition $\begin{matrix} {{A(z)} = {\frac{1}{1 + l}\left( {{\left( {z + 1} \right){\sum\limits_{i = 0}^{{{({N - 1})}/2} - 1}\left( {z^{2} + 1 - {2k_{2i}z}} \right)}} + {{l\left( {z - 1} \right)}{\sum\limits_{i = 0}^{{{({N - 1})}/2} - 1}\left( {z^{2} + 1 - {2k_{{2i} + 1}z}} \right)}}} \right)}} & \left( {{Equation}\quad 5} \right) \end{matrix}$ wherein l and k_(i) (i=0, 1, 2 , , , ) are real numbers.
 2. A magnetic disk drive containing a feed-forward circuit wherein: the feed-forward circuit includes an infinite impulse response filter circuit and a circuit to adaptively change the coefficients of the infinite impulse response filter circuit; the infinite impulse response filter circuit whose transfer function's coefficients are adaptively changed wherein: using a Nth-order polynomial A(z) and a polynomial B(Z) whose order is not higher than N, the transfer function of the infinite impulse response filter circuit is defined by $\begin{matrix} {{L(z)} = \frac{B(z)}{A(z)}} & \left( {{Equation}\quad 1} \right) \\ {\prod\limits_{i = 0}^{L}\quad X} & \left( {{Equation}\quad 2} \right) \end{matrix}$ is assumed to be 1 when L is negative; in other words $\begin{matrix} {{\prod\limits_{i = 0}^{- 1}\quad\left( {z^{2} + 1 - {2k_{i}z}} \right)} = 1} & \left( {{Equation}\quad 3} \right) \end{matrix}$ when the polynomial A(Z) is transformed to make the term of the Nth power of z equal to 1, if the order of the polynomial A(z) is even, the polynomial A(z) is determined so as to satisfy the condition $\begin{matrix} {{{A(z)} = {\frac{1}{1 + l}\left( {{\sum\limits_{i = 0}^{{N/2} - 1}\left( {z^{2} + 1 - {2k_{2i}z}} \right)} + {{l\left( {z^{2} - 1} \right)}{\sum\limits_{i = 0}^{{N/2} - 2}\left( {z^{2} + 1 - {2k_{{2i} + 1}z}} \right)}}} \right)}};} & \left( {{Equation}\quad 4} \right) \end{matrix}$ if the order N is odd, the polynomial A(z) is determined so as to satisfy the condition $\begin{matrix} {{A(z)} = {\frac{1}{1 + l}\left( {{\left( {z + 1} \right){\sum\limits_{i = 0}^{{{({N - 1})}/2} - 1}\left( {z^{2} + 1 - {2k_{2i}z}} \right)}} + {{l\left( {z - 1} \right)}{\sum\limits_{i = 0}^{{{({N - 1})}/2} - 1}\left( {z^{2} + 1 - {2k_{{2i} + 1}z}} \right)}}} \right)}} & \left( {{Equation}\quad 5} \right) \end{matrix}$ wherein l and k_(i) (i=0, 1, 2 , , , ) are real numbers.
 3. The magnetic disk drive according to claim 2 wherein: the circuit to adaptively change the coefficients changes the coefficients of the infinite impulse response filter circuit while satisfying the constraint l>0 1>k ₀ >k ₁ > . . . >k _(N-2)>−1  (Equation 6)
 4. The magnetic disk drive according to claim 2 wherein: the circuit to adaptively change the coefficients changes the coefficients of the infinite impulse response filter circuit while satisfying the constraint β>l>α 1−γ₀ >k ₀ >k1+δ₀ k0−γ₁ >k ₁ >k ₂+δ₁ . . . k _(N-3)−γ_(N-2) >k _(N-2)>−1+δ_(N-2) where both α and β are positive numbers and α, γ_(i) and σ_(i) are designed to be smaller than their respective predetermined upper limits while β is designed to be larger than its predetermined lower limit. 